#include "MisionSingle.h"
#include "MisionBanderasSingle.h"
#include "windows.h"

MisionBanderasSingle::MisionBanderasSingle(Escenario* escenario){
	list<Entidad*> listaEntidades = escenario->getEntidades();
	list<Entidad*>::iterator itListaEntidades = listaEntidades.begin();
	Entidad* entidadActual;
	for (; itListaEntidades != listaEntidades.end(); ++itListaEntidades) {
		entidadActual = *itListaEntidades;
		if (entidadActual->getTipo()->getNombre().compare("bandera") == 0) {
			listaBanderas.push_back(entidadActual);
		}
	}
}

bool MisionBanderasSingle::estaActiva(){
	cout << "entra en esta activa" << endl;

	if (listaBanderas.size()==0) return true;

	list<Entidad*>::iterator itBanderas = listaBanderas.begin();
	Entidad* banderaActual;
	string nombreDestructor;
	//cout << "antes for entra en esta activa" << endl;
	//cout << "CANTIDAD DE BANDERAS A ROMPER: " << listaBanderas.size() << endl;
	for (; itBanderas != listaBanderas.end(); ++itBanderas) {
		banderaActual = *itBanderas;
		cout << "banderaActual " << banderaActual->getId() << " nombre: " << banderaActual->getTipo()->getNombre() << endl;
		nombreDestructor = banderaActual->getNombreDestructor();
		if (nombreDestructor.compare("PROTAGONISTA") != 0) {
			return true;
		}
	}
	return false;
}
